Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Veni, Vidi, Running on PowerPC! #30

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

sideeffect42
Copy link
Contributor

I have made the code compatible with big-endian architectures (PowerPC) and fixed some endian-bugs.

Using the HoRNDIS_PPC.xcodeproj (for Xcode 2.4-3.1) it is possible to build a version of HoRNDIS which will run on

  • Mac OS X 10.4 Tiger or 10.5 Leopard (possibly also higher versions)
  • PowerPC and i386*

The state of this backport has to be considered BETA at this point !

Disclaimer:

Although the product has run for hours without any problems, KERNEL PANICS do occasionally happen!
It is recommended to load the kext on 10.5 or lower manually only.

It is your sole responsibility to make sure that your data is always save when you're running HoRNDIS on one of the systems mentioned above!

*i386 has not been tested.

@jwise
Copy link
Owner

jwise commented Nov 17, 2014

I'm merging these now (just had it crash my x86 machine, though that could be because of another change I made -- am tracking that down). I didn't pull 1d8ba34 or 78efd48 because they break the x86 build in various ways.

@jwise
Copy link
Owner

jwise commented Nov 17, 2014

Ok, merged 7038390 as 83b4ba8; 9f2dc2c as 9b572c1; 7588d5e and ffc53dc as fc1e604.

Do you have an x86 machine to test on? If so, I'll just give you commit access so you can fix up the other things (and add other improvements as you see fit).

The issue with 1d8ba34 is that it broke the plist for the x86 build, since the Git Version stuff wasn't in the x86 build. (Probably not surprising to you :-) )

78efd48 probably should just use the same Distribution stuff that we use now for x86, ideally, so it can all be automated through the same makefile. (At the very least, the rtf files for the x86 Distribution build need to stay around.) I think the real best case is that there be a way to point the Makefile at a PowerPC-built binary, and then just 'lipo' the PPC bits into the x86 .kext that's built with the "normal" flow ... and then from there, we should have a 3-way universal kext.

@sideeffect42
Copy link
Contributor Author

For 1d8ba34 you have to add a build target (I called mine "GenGitVersion") to your Xcode project that executes the following shell script:

PATH=$PATH:/opt/local/bin # Use /opt/local (MacPorts) as fallback

# Look for git
git=$(which git)
if [ -z $git ]; then echo "Cannot find git on this system"; exit 1; fi

# Touch Info.plist
if [ -e HoRNDIS-Info.plist ]; then touch HoRNDIS-Info.plist; fi
if [ -e Info.plist ]; then touch Info.plist; fi

# Find latest git version
version=`$git describe --dirty`
version=`echo $version | sed 's/[a-zA-Z]*//'`
versionNum=`echo $version | sed 's/\-[0-9]*\-[a-zA-Z0-9]*//' | sed 's/-dirty//'`

# Write macros
echo "#define GIT_VERSION $version" > InfoPlist.h
echo "#define APP_VERSION $versionNum" >> InfoPlist.h

All this does is get the version from git so you don't have to adjust it manually.

As far as 78efd48 is concerned, it seems to be path issues. If you change those back, it should work.
But those changes do only matter if you want to build a "universal" package anyway.
I'm going to change those to two separate installers.

@jwise
Copy link
Owner

jwise commented Nov 17, 2014

(The crash, by the way, was that I apparently don't know the initialization sequence of this driver, and broke things making the 4737cc6 change.)

@mrkapqa
Copy link

mrkapqa commented Jan 2, 2016

hello , how can i use Horndis on my Leopard G5 Powermac to get USB Reverse Tethering working?
installed Horndis Driver via Tigerbrew, but it seems not working (no response when i attach a Samsung Phone and select "USB Reverse Teterhing" option on the Phone).
Thanks

@sideeffect42
Copy link
Contributor Author

Hi @mrkapqa

tigerbrew gets the source code from @jwise's repository.
I don't know if PowerPC builds are working from there.

You can grab a working copy from my repository sideeffect42/HoRNDIS.
You have three choices:

  • Download the binaries from the releases page
  • Build your own using Xcode
  • Modify the brew formula to clone from my repository and use brew to build.

Hope this helps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants